//找出数组中的第一个回文字符串
/*给你一个字符串数组 words ，找出并返回数组中的 第一个回文字符串 。如果不存在满足要求的字符串，返回一个 空字符串 "" 。
回文字符串 的定义为：如果一个字符串正着读和反着读一样，那么该字符串就是一个 回文字符串 。
1 <= words.length <= 100
1 <= words[i].length <= 100
words[i] 仅由小写英文字母组成
*/
bool ispal(char* s) {
    int right = strlen(s) - 1;
    int left = 0;
    while (left < right) {
        if (s[left] != s[right])
            return false;
        left++;
        right--;
    }
    return true;
}
char* firstPalindrome(char** words, int wordsSize) {
    for (int i = 0; i < wordsSize; i++) {
        if (ispal(words[i]))
            return words[i];
    }
    char* s = (char*)calloc(sizeof(char), 1);
    return s;
}


//统计数组中相等且可以被整除的数对
/*给你一个下标从 0 开始长度为 n 的整数数组 nums 和一个整数 k ，请你返回满足 0 <= i < j < n ，nums[i] == nums[j] 且 (i * j) 能被 k 整除的数对 (i, j) 的 数目 。
1 <= nums.length <= 100
1 <= nums[i], k <= 100
*/
int countPairs(int* nums, int numsSize, int k) {
    int count = 0;
    for (int i = 0; i < numsSize; i++) {
        for (int j = i + 1; j < numsSize; j++) {
            if (nums[i] == nums[j] && i * j % k == 0)
                count++;
        }
    }
    return count;
}